<!-- HTML header for doxygen 1.8.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>ROSS: core/tw-util.c File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <a href="https://github.com/ROSS-org/ROSS">
   <div id="projectname">ROSS
   </div>
   </a>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_af18cf245e3394ab3b436135935cfd6e.html">core</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">tw-util.c File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;<a class="el" href="ross_8h_source.html">ross.h</a>&gt;</code><br/>
</div>
<p><a href="tw-util_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmem__pool.html">mem_pool</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a852b8f54d9bf6666c9cb262ccbd0dc56"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a852b8f54d9bf6666c9cb262ccbd0dc56">tw_output</a> (<a class="el" href="structtw__lp.html">tw_lp</a> *lp, const char *fmt,...)</td></tr>
<tr class="separator:a852b8f54d9bf6666c9cb262ccbd0dc56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9fdd5173071664ba458fbd0d2419713e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a9fdd5173071664ba458fbd0d2419713e">tw_printf</a> (const char *file, int line, const char *fmt,...)</td></tr>
<tr class="separator:a9fdd5173071664ba458fbd0d2419713e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a653cb2b88ee27b886ba5c854d5a0ba5c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a653cb2b88ee27b886ba5c854d5a0ba5c">tw_error</a> (const char *file, int line, const char *fmt,...)</td></tr>
<tr class="separator:a653cb2b88ee27b886ba5c854d5a0ba5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acbad94a55fd48c019924e3efbfa9b57a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#acbad94a55fd48c019924e3efbfa9b57a">tw_warning</a> (const char *file, int line, const char *fmt,...)</td></tr>
<tr class="separator:acbad94a55fd48c019924e3efbfa9b57a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0611e23c33bb8c31272e79d876b8bcb0"><td class="memItemLeft" align="right" valign="top">static void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a0611e23c33bb8c31272e79d876b8bcb0">my_malloc</a> (size_t len)</td></tr>
<tr class="separator:a0611e23c33bb8c31272e79d876b8bcb0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a282a8ee53ce0f7007f186760ba2c1e85"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a282a8ee53ce0f7007f186760ba2c1e85">tw_calloc_stats</a> (size_t *bytes_alloc, size_t *bytes_wasted)</td></tr>
<tr class="separator:a282a8ee53ce0f7007f186760ba2c1e85"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57c62eebb6371a6d0d5ea5043f12f91b"><td class="memItemLeft" align="right" valign="top">static void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a57c62eebb6371a6d0d5ea5043f12f91b">pool_alloc</a> (size_t len)</td></tr>
<tr class="separator:a57c62eebb6371a6d0d5ea5043f12f91b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a445b1ed30cd2e8ef1f837e782a339a70"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a445b1ed30cd2e8ef1f837e782a339a70">tw_calloc</a> (const char *file, int line, const char *for_who, size_t e_sz, size_t n)</td></tr>
<tr class="separator:a445b1ed30cd2e8ef1f837e782a339a70"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a509bf47a4c03b5971d4d49dd409c5f54"><td class="memItemLeft" align="right" valign="top">static struct <a class="el" href="structmem__pool.html">mem_pool</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a509bf47a4c03b5971d4d49dd409c5f54">main_pool</a></td></tr>
<tr class="separator:a509bf47a4c03b5971d4d49dd409c5f54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaeb9b2d37542fba1b318e4fcde49d9b4"><td class="memItemLeft" align="right" valign="top">static const size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#aaeb9b2d37542fba1b318e4fcde49d9b4">pool_size</a> = (512 * 1024) - 32</td></tr>
<tr class="separator:aaeb9b2d37542fba1b318e4fcde49d9b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f7da6c881206b1209546548fb1088a4"><td class="memItemLeft" align="right" valign="top">static const size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a1f7da6c881206b1209546548fb1088a4">pool_align</a> = (( sizeof(double) ) &gt; ( sizeof(void*) ) ? ( sizeof(double) ) : ( sizeof(void*) ))</td></tr>
<tr class="separator:a1f7da6c881206b1209546548fb1088a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3bb14855f7c280e92d0c01bbbc9b4c3c"><td class="memItemLeft" align="right" valign="top">static size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a3bb14855f7c280e92d0c01bbbc9b4c3c">total_allocated</a></td></tr>
<tr class="separator:a3bb14855f7c280e92d0c01bbbc9b4c3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01fa87954b936910e1c00044cab8d30f"><td class="memItemLeft" align="right" valign="top">static unsigned&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="tw-util_8c.html#a01fa87954b936910e1c00044cab8d30f">malloc_calls</a></td></tr>
<tr class="separator:a01fa87954b936910e1c00044cab8d30f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a0611e23c33bb8c31272e79d876b8bcb0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void * my_malloc </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00240">240</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>Referenced by <a class="el" href="tw-util_8c_source.html#l00160">pool_alloc()</a>.</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a0611e23c33bb8c31272e79d876b8bcb0_icgraph.png" border="0" usemap="#tw-util_8c_a0611e23c33bb8c31272e79d876b8bcb0_icgraph" alt=""/></div>
<map name="tw-util_8c_a0611e23c33bb8c31272e79d876b8bcb0_icgraph" id="tw-util_8c_a0611e23c33bb8c31272e79d876b8bcb0_icgraph">
<area shape="rect" id="node2" href="tw-util_8c.html#a57c62eebb6371a6d0d5ea5043f12f91b" title="pool_alloc" alt="" coords="139,438,219,464"/><area shape="rect" id="node3" href="tw-util_8c.html#a445b1ed30cd2e8ef1f837e782a339a70" title="tw_calloc" alt="" coords="267,438,344,464"/><area shape="rect" id="node4" href="buddy_8h.html#ac7158d51ffbe54dd3e04d6568f90c42c" title="create_buddy_table" alt="" coords="399,463,534,490"/><area shape="rect" id="node8" href="hash-quadratic_8h.html#aebe8a594c0fe5a367f194e7ba7e1aa80" title="tw_hash_create" alt="" coords="605,7,720,34"/><area shape="rect" id="node9" href="tw-pe_8c.html#a2a0e6607074d85f80badcf5f5da3547e" title="tw_pe_init" alt="" coords="795,83,877,110"/><area shape="rect" id="node12" href="analysis-lp_8h.html#ac43c559cd392cfd316e776c70b65c542" title="analysis_init" alt="" coords="419,159,514,186"/><area shape="rect" id="node13" href="st-stats-buffer_8c.html#acc40ff4e443edf9cfd1a2a1f5539a41d" title="st_buffer_allocate" alt="" coords="600,666,725,692"/><area shape="rect" id="node14" href="tw-setup_8c.html#ae29dd6eba29314361ef334f6bf028210" title="tw_define_lps" alt="" coords="785,742,887,768"/><area shape="rect" id="node15" href="st-stats-buffer_8c.html#a9c813e13608176ebd85999c935e3c4af" title="st_buffer_init" alt="" coords="418,615,515,642"/><area shape="rect" id="node18" href="network-mpi_8c.html#a9b32fd67edec885cbb35137bd4547616" title="Initializes queues used for posted sends and receives. " alt="" coords="809,210,863,236"/><area shape="rect" id="node19" href="tw-queue_8h.html#a3e01ce907630af7763047e4d9ba14693" title="tw_pq_create" alt="" coords="417,514,517,540"/><area shape="rect" id="node20" href="ross-extern_8h.html#a96c2fb54945c414a31ce0512c39622b0" title="tw_rand_init_streams" alt="" coords="589,767,736,794"/><area shape="rect" id="node21" href="rand-clcg4_8h.html#a3c5ea1f9125b9534b62a80dbfa20dafb" title="rng_init" alt="" coords="435,108,499,135"/><area shape="rect" id="node23" href="tw-eventq_8h.html#ac91b37eb84633064fe5d29534631618b" title="tw_eventq_alloc" alt="" coords="409,564,525,591"/><area shape="rect" id="node24" href="tw-kp_8c.html#aafb58a114f017b8491090ea372312684" title="tw_kp_onpe" alt="" coords="421,884,513,911"/><area shape="rect" id="node27" href="tw-kp_8c.html#a0bf4c312e7e773f0e8dbeaa208c43315" title="init_output_messages" alt="" coords="392,311,541,338"/><area shape="rect" id="node28" href="tw-kp_8c.html#a4f628dcfcaa889cd15a8142af1b1260e" title="tw_init_kps" alt="" coords="619,348,707,375"/><area shape="rect" id="node30" href="tw-lp_8c.html#adafe186da3f16dcfe74c9303bcda73d5" title="tw_lp_onpe" alt="" coords="423,830,511,856"/><area shape="rect" id="node32" href="tw-lp_8c.html#ac66e6455900b508bb4e4e0cef4df8061" title="tw_init_lps" alt="" coords="621,286,705,312"/><area shape="rect" id="node33" href="tw-setup_8c.html#a83b28224a6806fcc16545a6aa8ea6ad3" title="tw_delta_alloc" alt="" coords="414,412,519,439"/><area shape="rect" id="node5" href="tw-setup_8c.html#a33b10808894f8c4d429e391810d96e08" title="setup_pes" alt="" coords="621,470,704,496"/><area shape="rect" id="node6" href="tw-setup_8c.html#a6dbc4bba03285bb1b8a8a5464f0375ea" title="tw_run" alt="" coords="953,470,1015,496"/><area shape="rect" id="node7" href="phold_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title="main" alt="" coords="1189,470,1240,496"/><area shape="rect" id="node10" href="network-mpi_8h.html#a625a50a6a03701b067693d7dc5ed483b" title="Starts the network library after option parsing. " alt="" coords="937,210,1031,236"/><area shape="rect" id="node11" href="tw-setup_8c.html#a7d395f5590701f5526a161fcb1261b03" title="tw_init" alt="" coords="1081,318,1141,344"/><area shape="rect" id="node16" href="st-instrumentation_8h.html#a5d9446447f438f438da8795d29bdeee0" title="specialized_lp_setup" alt="" coords="591,615,734,642"/><area shape="rect" id="node17" href="st-instrumentation_8h.html#a2141145e35484c4401c6786406afd224" title="st_inst_init" alt="" coords="793,546,879,572"/><area shape="rect" id="node22" href="ross-random_8h.html#a5600e4cb011d29cc24a2408220d58909" title="tw_rand_init" alt="" coords="617,108,709,135"/><area shape="rect" id="node25" href="tw-setup_8c.html#aec955754eb6d560d7bc1454aeaaa516f" title="map_linear" alt="" coords="620,935,705,962"/><area shape="rect" id="node26" href="tw-setup_8c.html#ab70815e9b532e3d9a85c0a3366477def" title="map_round_robin" alt="" coords="602,884,723,911"/><area shape="rect" id="node29" href="tw-sched_8c.html#ae7357a99fcf58867f153cb7ab920b400" title="tw_sched_init" alt="" coords="785,348,887,375"/><area shape="rect" id="node31" href="st-instrumentation_8h.html#aa3965326e96c2b9e5aba87f35ed2a896" title="specialized_lp_init\l_mapping" alt="" coords="599,818,727,860"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a57c62eebb6371a6d0d5ea5043f12f91b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">static void* pool_alloc </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>len</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00160">160</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>References <a class="el" href="tw-util_8c_source.html#l00107">mem_pool::end_free</a>, <a class="el" href="tw-util_8c_source.html#l00110">main_pool</a>, <a class="el" href="tw-util_8c_source.html#l00240">my_malloc()</a>, <a class="el" href="tw-util_8c_source.html#l00106">mem_pool::next_free</a>, <a class="el" href="tw-util_8c_source.html#l00105">mem_pool::next_pool</a>, and <a class="el" href="tw-util_8c_source.html#l00113">pool_size</a>.</p>

<p>Referenced by <a class="el" href="tw-util_8c_source.html#l00203">tw_calloc()</a>.</p>

<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a57c62eebb6371a6d0d5ea5043f12f91b_cgraph.png" border="0" usemap="#tw-util_8c_a57c62eebb6371a6d0d5ea5043f12f91b_cgraph" alt=""/></div>
<map name="tw-util_8c_a57c62eebb6371a6d0d5ea5043f12f91b_cgraph" id="tw-util_8c_a57c62eebb6371a6d0d5ea5043f12f91b_cgraph">
<area shape="rect" id="node2" href="tw-util_8c.html#a0611e23c33bb8c31272e79d876b8bcb0" title="my_malloc" alt="" coords="133,5,219,32"/></map>
</div>
</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a57c62eebb6371a6d0d5ea5043f12f91b_icgraph.png" border="0" usemap="#tw-util_8c_a57c62eebb6371a6d0d5ea5043f12f91b_icgraph" alt=""/></div>
<map name="tw-util_8c_a57c62eebb6371a6d0d5ea5043f12f91b_icgraph" id="tw-util_8c_a57c62eebb6371a6d0d5ea5043f12f91b_icgraph">
<area shape="rect" id="node2" href="tw-util_8c.html#a445b1ed30cd2e8ef1f837e782a339a70" title="tw_calloc" alt="" coords="133,438,211,464"/><area shape="rect" id="node3" href="buddy_8h.html#ac7158d51ffbe54dd3e04d6568f90c42c" title="create_buddy_table" alt="" coords="266,463,401,490"/><area shape="rect" id="node7" href="hash-quadratic_8h.html#aebe8a594c0fe5a367f194e7ba7e1aa80" title="tw_hash_create" alt="" coords="472,7,587,34"/><area shape="rect" id="node8" href="tw-pe_8c.html#a2a0e6607074d85f80badcf5f5da3547e" title="tw_pe_init" alt="" coords="662,83,743,110"/><area shape="rect" id="node11" href="analysis-lp_8h.html#ac43c559cd392cfd316e776c70b65c542" title="analysis_init" alt="" coords="286,159,381,186"/><area shape="rect" id="node12" href="st-stats-buffer_8c.html#acc40ff4e443edf9cfd1a2a1f5539a41d" title="st_buffer_allocate" alt="" coords="467,666,592,692"/><area shape="rect" id="node13" href="tw-setup_8c.html#ae29dd6eba29314361ef334f6bf028210" title="tw_define_lps" alt="" coords="651,742,754,768"/><area shape="rect" id="node14" href="st-stats-buffer_8c.html#a9c813e13608176ebd85999c935e3c4af" title="st_buffer_init" alt="" coords="285,615,382,642"/><area shape="rect" id="node17" href="network-mpi_8c.html#a9b32fd67edec885cbb35137bd4547616" title="Initializes queues used for posted sends and receives. " alt="" coords="676,210,729,236"/><area shape="rect" id="node18" href="tw-queue_8h.html#a3e01ce907630af7763047e4d9ba14693" title="tw_pq_create" alt="" coords="283,514,383,540"/><area shape="rect" id="node19" href="ross-extern_8h.html#a96c2fb54945c414a31ce0512c39622b0" title="tw_rand_init_streams" alt="" coords="456,767,603,794"/><area shape="rect" id="node20" href="rand-clcg4_8h.html#a3c5ea1f9125b9534b62a80dbfa20dafb" title="rng_init" alt="" coords="301,108,365,135"/><area shape="rect" id="node22" href="tw-eventq_8h.html#ac91b37eb84633064fe5d29534631618b" title="tw_eventq_alloc" alt="" coords="275,564,391,591"/><area shape="rect" id="node23" href="tw-kp_8c.html#aafb58a114f017b8491090ea372312684" title="tw_kp_onpe" alt="" coords="287,884,379,911"/><area shape="rect" id="node26" href="tw-kp_8c.html#a0bf4c312e7e773f0e8dbeaa208c43315" title="init_output_messages" alt="" coords="259,311,408,338"/><area shape="rect" id="node27" href="tw-kp_8c.html#a4f628dcfcaa889cd15a8142af1b1260e" title="tw_init_kps" alt="" coords="485,348,573,375"/><area shape="rect" id="node29" href="tw-lp_8c.html#adafe186da3f16dcfe74c9303bcda73d5" title="tw_lp_onpe" alt="" coords="289,830,377,856"/><area shape="rect" id="node31" href="tw-lp_8c.html#ac66e6455900b508bb4e4e0cef4df8061" title="tw_init_lps" alt="" coords="487,286,571,312"/><area shape="rect" id="node32" href="tw-setup_8c.html#a83b28224a6806fcc16545a6aa8ea6ad3" title="tw_delta_alloc" alt="" coords="281,412,386,439"/><area shape="rect" id="node4" href="tw-setup_8c.html#a33b10808894f8c4d429e391810d96e08" title="setup_pes" alt="" coords="488,470,571,496"/><area shape="rect" id="node5" href="tw-setup_8c.html#a6dbc4bba03285bb1b8a8a5464f0375ea" title="tw_run" alt="" coords="820,470,881,496"/><area shape="rect" id="node6" href="phold_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title="main" alt="" coords="1056,470,1107,496"/><area shape="rect" id="node9" href="network-mpi_8h.html#a625a50a6a03701b067693d7dc5ed483b" title="Starts the network library after option parsing. " alt="" coords="803,210,898,236"/><area shape="rect" id="node10" href="tw-setup_8c.html#a7d395f5590701f5526a161fcb1261b03" title="tw_init" alt="" coords="947,318,1007,344"/><area shape="rect" id="node15" href="st-instrumentation_8h.html#a5d9446447f438f438da8795d29bdeee0" title="specialized_lp_setup" alt="" coords="458,615,601,642"/><area shape="rect" id="node16" href="st-instrumentation_8h.html#a2141145e35484c4401c6786406afd224" title="st_inst_init" alt="" coords="660,546,745,572"/><area shape="rect" id="node21" href="ross-random_8h.html#a5600e4cb011d29cc24a2408220d58909" title="tw_rand_init" alt="" coords="483,108,575,135"/><area shape="rect" id="node24" href="tw-setup_8c.html#aec955754eb6d560d7bc1454aeaaa516f" title="map_linear" alt="" coords="487,935,572,962"/><area shape="rect" id="node25" href="tw-setup_8c.html#ab70815e9b532e3d9a85c0a3366477def" title="map_round_robin" alt="" coords="469,884,590,911"/><area shape="rect" id="node28" href="tw-sched_8c.html#ae7357a99fcf58867f153cb7ab920b400" title="tw_sched_init" alt="" coords="651,348,754,375"/><area shape="rect" id="node30" href="st-instrumentation_8h.html#aa3965326e96c2b9e5aba87f35ed2a896" title="specialized_lp_init\l_mapping" alt="" coords="465,818,593,860"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a445b1ed30cd2e8ef1f837e782a339a70"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void* tw_calloc </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>line</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>for_who</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>e_sz</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00203">203</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>References <a class="el" href="tw-util_8c_source.html#l00160">pool_alloc()</a>, and <a class="el" href="tw-util_8c_source.html#l00074">tw_error()</a>.</p>

<p>Referenced by <a class="el" href="analysis-lp_8c_source.html#l00013">analysis_init()</a>, <a class="el" href="buddy_8c_source.html#l00288">create_buddy_table()</a>, <a class="el" href="tw-kp_8c_source.html#l00114">init_output_messages()</a>, <a class="el" href="network-mpi_8c_source.html#l00093">init_q()</a>, <a class="el" href="rand-clcg4_8c_source.html#l00338">rng_init()</a>, <a class="el" href="st-stats-buffer_8c_source.html#l00016">st_buffer_allocate()</a>, <a class="el" href="st-stats-buffer_8c_source.html#l00062">st_buffer_init()</a>, <a class="el" href="tw-setup_8c_source.html#l00218">tw_define_lps()</a>, <a class="el" href="tw-setup_8c_source.html#l00440">tw_delta_alloc()</a>, <a class="el" href="tw-eventq_8h_source.html#l00186">tw_eventq_alloc()</a>, <a class="el" href="hash-quadratic_8c_source.html#l00032">tw_hash_create()</a>, <a class="el" href="tw-kp_8c_source.html#l00131">tw_init_kps()</a>, <a class="el" href="tw-lp_8c_source.html#l00083">tw_init_lps()</a>, <a class="el" href="tw-kp_8c_source.html#l00004">tw_kp_onpe()</a>, <a class="el" href="tw-lp_8c_source.html#l00057">tw_lp_onpe()</a>, <a class="el" href="tw-pe_8c_source.html#l00032">tw_pe_init()</a>, <a class="el" href="splay_8c_source.html#l00054">tw_pq_create()</a>, and <a class="el" href="rand-clcg4_8c_source.html#l00320">tw_rand_init_streams()</a>.</p>

<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a445b1ed30cd2e8ef1f837e782a339a70_cgraph.png" border="0" usemap="#tw-util_8c_a445b1ed30cd2e8ef1f837e782a339a70_cgraph" alt=""/></div>
<map name="tw-util_8c_a445b1ed30cd2e8ef1f837e782a339a70_cgraph" id="tw-util_8c_a445b1ed30cd2e8ef1f837e782a339a70_cgraph">
<area shape="rect" id="node2" href="tw-util_8c.html#a57c62eebb6371a6d0d5ea5043f12f91b" title="pool_alloc" alt="" coords="131,5,211,32"/><area shape="rect" id="node4" href="tw-util_8c.html#a653cb2b88ee27b886ba5c854d5a0ba5c" title="tw_error" alt="" coords="136,56,205,83"/><area shape="rect" id="node3" href="tw-util_8c.html#a0611e23c33bb8c31272e79d876b8bcb0" title="my_malloc" alt="" coords="265,5,351,32"/><area shape="rect" id="node5" href="network-mpi_8c.html#a2e139e8547a091c4c4ea0b445fe8dd1c" title="tw_net_abort" alt="" coords="259,56,357,83"/></map>
</div>
</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a445b1ed30cd2e8ef1f837e782a339a70_icgraph.png" border="0" usemap="#tw-util_8c_a445b1ed30cd2e8ef1f837e782a339a70_icgraph" alt=""/></div>
<map name="tw-util_8c_a445b1ed30cd2e8ef1f837e782a339a70_icgraph" id="tw-util_8c_a445b1ed30cd2e8ef1f837e782a339a70_icgraph">
<area shape="rect" id="node2" href="analysis-lp_8h.html#ac43c559cd392cfd316e776c70b65c542" title="analysis_init" alt="" coords="158,5,253,32"/><area shape="rect" id="node3" href="buddy_8h.html#ac7158d51ffbe54dd3e04d6568f90c42c" title="create_buddy_table" alt="" coords="138,360,273,387"/><area shape="rect" id="node7" href="tw-kp_8c.html#a0bf4c312e7e773f0e8dbeaa208c43315" title="init_output_messages" alt="" coords="131,512,280,539"/><area shape="rect" id="node8" href="tw-kp_8c.html#a4f628dcfcaa889cd15a8142af1b1260e" title="tw_init_kps" alt="" coords="357,461,445,488"/><area shape="rect" id="node10" href="network-mpi_8c.html#a9b32fd67edec885cbb35137bd4547616" title="Initializes queues used for posted sends and receives. " alt="" coords="548,81,601,108"/><area shape="rect" id="node13" href="rand-clcg4_8h.html#a3c5ea1f9125b9534b62a80dbfa20dafb" title="rng_init" alt="" coords="173,107,237,133"/><area shape="rect" id="node15" href="tw-pe_8c.html#a2a0e6607074d85f80badcf5f5da3547e" title="tw_pe_init" alt="" coords="534,157,615,184"/><area shape="rect" id="node16" href="st-stats-buffer_8c.html#acc40ff4e443edf9cfd1a2a1f5539a41d" title="st_buffer_allocate" alt="" coords="339,664,464,691"/><area shape="rect" id="node17" href="tw-setup_8c.html#ae29dd6eba29314361ef334f6bf028210" title="tw_define_lps" alt="" coords="523,740,626,767"/><area shape="rect" id="node18" href="st-stats-buffer_8c.html#a9c813e13608176ebd85999c935e3c4af" title="st_buffer_init" alt="" coords="157,613,254,640"/><area shape="rect" id="node21" href="tw-setup_8c.html#a83b28224a6806fcc16545a6aa8ea6ad3" title="tw_delta_alloc" alt="" coords="153,411,258,437"/><area shape="rect" id="node22" href="tw-eventq_8h.html#ac91b37eb84633064fe5d29534631618b" title="tw_eventq_alloc" alt="" coords="147,259,263,285"/><area shape="rect" id="node23" href="hash-quadratic_8h.html#aebe8a594c0fe5a367f194e7ba7e1aa80" title="tw_hash_create" alt="" coords="344,208,459,235"/><area shape="rect" id="node24" href="tw-lp_8c.html#ac66e6455900b508bb4e4e0cef4df8061" title="tw_init_lps" alt="" coords="359,512,443,539"/><area shape="rect" id="node25" href="tw-kp_8c.html#aafb58a114f017b8491090ea372312684" title="tw_kp_onpe" alt="" coords="159,765,251,792"/><area shape="rect" id="node28" href="tw-lp_8c.html#adafe186da3f16dcfe74c9303bcda73d5" title="tw_lp_onpe" alt="" coords="161,816,249,843"/><area shape="rect" id="node30" href="tw-queue_8h.html#a3e01ce907630af7763047e4d9ba14693" title="tw_pq_create" alt="" coords="155,309,255,336"/><area shape="rect" id="node31" href="ross-extern_8h.html#a96c2fb54945c414a31ce0512c39622b0" title="tw_rand_init_streams" alt="" coords="328,933,475,960"/><area shape="rect" id="node4" href="tw-setup_8c.html#a33b10808894f8c4d429e391810d96e08" title="setup_pes" alt="" coords="360,360,443,387"/><area shape="rect" id="node5" href="tw-setup_8c.html#a6dbc4bba03285bb1b8a8a5464f0375ea" title="tw_run" alt="" coords="692,473,753,500"/><area shape="rect" id="node6" href="phold_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title="main" alt="" coords="928,473,979,500"/><area shape="rect" id="node9" href="tw-sched_8c.html#ae7357a99fcf58867f153cb7ab920b400" title="tw_sched_init" alt="" coords="523,473,626,500"/><area shape="rect" id="node11" href="network-mpi_8h.html#a625a50a6a03701b067693d7dc5ed483b" title="Starts the network library after option parsing. " alt="" coords="675,157,770,184"/><area shape="rect" id="node12" href="tw-setup_8c.html#a7d395f5590701f5526a161fcb1261b03" title="tw_init" alt="" coords="819,291,879,317"/><area shape="rect" id="node14" href="ross-random_8h.html#a5600e4cb011d29cc24a2408220d58909" title="tw_rand_init" alt="" coords="355,107,447,133"/><area shape="rect" id="node19" href="st-instrumentation_8h.html#a5d9446447f438f438da8795d29bdeee0" title="specialized_lp_setup" alt="" coords="330,613,473,640"/><area shape="rect" id="node20" href="st-instrumentation_8h.html#a2141145e35484c4401c6786406afd224" title="st_inst_init" alt="" coords="532,549,617,576"/><area shape="rect" id="node26" href="tw-setup_8c.html#aec955754eb6d560d7bc1454aeaaa516f" title="map_linear" alt="" coords="359,765,444,792"/><area shape="rect" id="node27" href="tw-setup_8c.html#ab70815e9b532e3d9a85c0a3366477def" title="map_round_robin" alt="" coords="341,816,462,843"/><area shape="rect" id="node29" href="st-instrumentation_8h.html#aa3965326e96c2b9e5aba87f35ed2a896" title="specialized_lp_init\l_mapping" alt="" coords="337,867,465,909"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a282a8ee53ce0f7007f186760ba2c1e85"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void tw_calloc_stats </td>
          <td>(</td>
          <td class="paramtype">size_t *&#160;</td>
          <td class="paramname"><em>bytes_alloc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t *&#160;</td>
          <td class="paramname"><em>bytes_wasted</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00120">120</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>References <a class="el" href="tw-util_8c_source.html#l00107">mem_pool::end_free</a>, <a class="el" href="tw-util_8c_source.html#l00106">mem_pool::next_free</a>, <a class="el" href="tw-util_8c_source.html#l00105">mem_pool::next_pool</a>, and <a class="el" href="tw-util_8c_source.html#l00115">total_allocated</a>.</p>

<p>Referenced by <a class="el" href="tw-stats_8c_source.html#l00125">tw_stats()</a>.</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a282a8ee53ce0f7007f186760ba2c1e85_icgraph.png" border="0" usemap="#tw-util_8c_a282a8ee53ce0f7007f186760ba2c1e85_icgraph" alt=""/></div>
<map name="tw-util_8c_a282a8ee53ce0f7007f186760ba2c1e85_icgraph" id="tw-util_8c_a282a8ee53ce0f7007f186760ba2c1e85_icgraph">
<area shape="rect" id="node2" href="tw-stats_8c.html#a0782b6be50ca83cb7f43782cde7d9ad4" title="tw_stats" alt="" coords="168,115,240,141"/><area shape="rect" id="node3" href="tw-sched_8c.html#ab3e02a0e976921bd18a11b8b6a00c110" title="tw_scheduler_conservative" alt="" coords="289,5,469,32"/><area shape="rect" id="node6" href="tw-sched_8c.html#a1ebf9585a3de4d61c5fc050c7600fcd8" title="tw_scheduler_optimistic" alt="" coords="297,56,460,83"/><area shape="rect" id="node7" href="tw-sched_8c.html#ad49988d8dcde406fac7f4a2e11eac17f" title="tw_scheduler_optimistic\l_debug" alt="" coords="297,107,460,149"/><area shape="rect" id="node8" href="tw-sched_8c.html#accfa49d85bd68f2c53d4a08cf64ace88" title="tw_scheduler_optimistic\l_realtime" alt="" coords="297,173,460,214"/><area shape="rect" id="node9" href="tw-sched_8c.html#ae19668282cb4aab245e2382eea8f1967" title="tw_scheduler_sequential" alt="" coords="296,239,461,265"/><area shape="rect" id="node4" href="tw-setup_8c.html#a6dbc4bba03285bb1b8a8a5464f0375ea" title="tw_run" alt="" coords="517,115,579,141"/><area shape="rect" id="node5" href="phold_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title="main" alt="" coords="627,115,677,141"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a653cb2b88ee27b886ba5c854d5a0ba5c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void tw_error </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>line</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00074">74</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>References <a class="el" href="ross-global_8c_source.html#l00088">g_tw_mynode</a>, and <a class="el" href="network-mpi_8c_source.html#l00147">tw_net_abort()</a>.</p>

<p>Referenced by <a class="el" href="analysis-lp_8c_source.html#l00013">analysis_init()</a>, <a class="el" href="tw-opts_8c_source.html#l00287">apply_opt()</a>, <a class="el" href="avl__tree_8c_source.html#l00300">avl_alloc()</a>, <a class="el" href="avl__tree_8c_source.html#l00251">avlDelete()</a>, <a class="el" href="avl__tree_8c_source.html#l00163">avlInsert()</a>, <a class="el" href="buddy_8c_source.html#l00234">buddy_alloc()</a>, <a class="el" href="tw-setup_8c_source.html#l00122">early_sanity_check()</a>, <a class="el" href="tw-event_8c_source.html#l00107">event_cancel()</a>, <a class="el" href="io-serialize_8c_source.html#l00068">io_event_deserialize()</a>, <a class="el" href="io-mpi_8c_source.html#l00227">io_load_events()</a>, <a class="el" href="tw-setup_8c_source.html#l00279">late_sanity_check()</a>, <a class="el" href="phold_8c_source.html#l00169">main()</a>, <a class="el" href="tw-setup_8c_source.html#l00135">map_linear()</a>, <a class="el" href="phold_8c_source.html#l00059">phold_event_handler()</a>, <a class="el" href="phold_8c_source.html#l00039">phold_pre_run()</a>, <a class="el" href="network-mpi_8c_source.html#l00284">recv_begin()</a>, <a class="el" href="network-mpi_8c_source.html#l00329">recv_finish()</a>, <a class="el" href="rand-clcg4_8c_source.html#l00451">rng_gen_reverse_val()</a>, <a class="el" href="network-mpi_8c_source.html#l00440">send_begin()</a>, <a class="el" href="network-mpi_8c_source.html#l00495">send_finish()</a>, <a class="el" href="tw-setup_8c_source.html#l00448">setup_pes()</a>, <a class="el" href="st-sim-engine_8c_source.html#l00102">st_collect_engine_data_kps()</a>, <a class="el" href="st-sim-engine_8c_source.html#l00145">st_collect_engine_data_lps()</a>, <a class="el" href="network-mpi_8c_source.html#l00215">test_q()</a>, <a class="el" href="tw-util_8c_source.html#l00203">tw_calloc()</a>, <a class="el" href="tw-setup_8c_source.html#l00218">tw_define_lps()</a>, <a class="el" href="ross-inline_8h_source.html#l00040">tw_event_new()</a>, <a class="el" href="tw-event_8c_source.html#l00009">tw_event_send()</a>, <a class="el" href="tw-eventq_8h_source.html#l00012">tw_eventq_debug()</a>, <a class="el" href="ross-kernel-inline_8h_source.html#l00053">tw_getkp()</a>, <a class="el" href="ross-kernel-inline_8h_source.html#l00009">tw_getlocal_lp()</a>, <a class="el" href="ross-kernel-inline_8h_source.html#l00041">tw_getlp()</a>, <a class="el" href="mpi__allreduce_8c_source.html#l00102">tw_gvt_step2()</a>, <a class="el" href="hash-quadratic_8c_source.html#l00032">tw_hash_create()</a>, <a class="el" href="hash-quadratic_8c_source.html#l00206">tw_hash_remove()</a>, <a class="el" href="tw-setup_8c_source.html#l00033">tw_init()</a>, <a class="el" href="tw-lp_8c_source.html#l00083">tw_init_lps()</a>, <a class="el" href="tw-kp_8c_source.html#l00004">tw_kp_onpe()</a>, <a class="el" href="tw-kp_8c_source.html#l00067">tw_kp_rollback_event()</a>, <a class="el" href="tw-lp_8c_source.html#l00073">tw_lp_onkp()</a>, <a class="el" href="tw-lp_8c_source.html#l00057">tw_lp_onpe()</a>, <a class="el" href="tw-lp_8c_source.html#l00038">tw_lp_settype()</a>, <a class="el" href="tw-lp_8c_source.html#l00011">tw_lp_setup_types()</a>, <a class="el" href="tw-lp_8c_source.html#l00227">tw_lp_suspend()</a>, <a class="el" href="network-mpi_8c_source.html#l00175">tw_net_barrier()</a>, <a class="el" href="network-mpi_8c_source.html#l00595">tw_net_cancel()</a>, <a class="el" href="network-mpi_8c_source.html#l00066">tw_net_init()</a>, <a class="el" href="network-mpi_8c_source.html#l00109">tw_net_start()</a>, <a class="el" href="network-mpi_8c_source.html#l00656">tw_net_statistics()</a>, <a class="el" href="network-mpi_8c_source.html#l00154">tw_net_stop()</a>, <a class="el" href="tw-opts_8c_source.html#l00427">tw_opt_parse()</a>, <a class="el" href="tw-pe_8c_source.html#l00032">tw_pe_init()</a>, <a class="el" href="tw-pe_8c_source.html#l00009">tw_pe_settype()</a>, <a class="el" href="splay_8c_source.html#l00065">tw_pq_compare_less_than()</a>, <a class="el" href="splay_8c_source.html#l00288">tw_pq_delete_any()</a>, <a class="el" href="tw-lp_8c_source.html#l00147">tw_pre_run_lps()</a>, <a class="el" href="rand-clcg4_8c_source.html#l00320">tw_rand_init_streams()</a>, <a class="el" href="ross-random_8c_source.html#l00152">tw_rand_normal01()</a>, <a class="el" href="tw-setup_8c_source.html#l00339">tw_run()</a>, <a class="el" href="tw-sched_8c_source.html#l00139">tw_sched_batch()</a>, <a class="el" href="tw-sched_8c_source.html#l00273">tw_sched_batch_realtime()</a>, <a class="el" href="tw-sched_8c_source.html#l00074">tw_sched_cancel_q()</a>, <a class="el" href="tw-sched_8c_source.html#l00021">tw_sched_event_q()</a>, <a class="el" href="tw-sched_8c_source.html#l00514">tw_scheduler_conservative()</a>, <a class="el" href="tw-sched_8c_source.html#l00733">tw_scheduler_optimistic_debug()</a>, <a class="el" href="tw-sched_8c_source.html#l00445">tw_scheduler_sequential()</a>, <a class="el" href="tw-state_8c_source.html#l00021">tw_snapshot_delta()</a>, <a class="el" href="tw-state_8c_source.html#l00055">tw_snapshot_restore()</a>, and <a class="el" href="tw-timing_8c_source.html#l00004">tw_wall_now()</a>.</p>

<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a653cb2b88ee27b886ba5c854d5a0ba5c_cgraph.png" border="0" usemap="#tw-util_8c_a653cb2b88ee27b886ba5c854d5a0ba5c_cgraph" alt=""/></div>
<map name="tw-util_8c_a653cb2b88ee27b886ba5c854d5a0ba5c_cgraph" id="tw-util_8c_a653cb2b88ee27b886ba5c854d5a0ba5c_cgraph">
<area shape="rect" id="node2" href="network-mpi_8c.html#a2e139e8547a091c4c4ea0b445fe8dd1c" title="tw_net_abort" alt="" coords="123,5,221,32"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a852b8f54d9bf6666c9cb262ccbd0dc56"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int tw_output </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structtw__lp.html">tw_lp</a> *&#160;</td>
          <td class="paramname"><em>lp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Rollback-aware printf, i.e. if the event gets rolled back, undo the printf. We can'd do that of course so we store the message in a buffer until GVT. </p>

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00008">8</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>References <a class="el" href="ross-types_8h_source.html#l00029">CONSERVATIVE</a>, <a class="el" href="ross-types_8h_source.html#l00385">tw_pe::cur_event</a>, <a class="el" href="ross-global_8c_source.html#l00018">g_tw_synchronization_protocol</a>, <a class="el" href="ross-types_8h_source.html#l00341">tw_kp::id</a>, <a class="el" href="ross-types_8h_source.html#l00313">tw_lp::kp</a>, <a class="el" href="ross-types_8h_source.html#l00240">tw_out::message</a>, <a class="el" href="ross-types_8h_source.html#l00237">tw_out::next</a>, <a class="el" href="ross-types_8h_source.html#l00289">tw_event::out_msgs</a>, <a class="el" href="ross-types_8h_source.html#l00308">tw_lp::pe</a>, <a class="el" href="ross-types_8h_source.html#l00028">SEQUENTIAL</a>, <a class="el" href="tw-kp_8c_source.html#l00162">tw_kp_grab_output_buffer()</a>, <a class="el" href="ross-extern_8h_source.html#l00164">TW_LOC</a>, and <a class="el" href="tw-util_8c_source.html#l00061">tw_printf()</a>.</p>

<p><div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a852b8f54d9bf6666c9cb262ccbd0dc56_cgraph.png" border="0" usemap="#tw-util_8c_a852b8f54d9bf6666c9cb262ccbd0dc56_cgraph" alt=""/></div>
<map name="tw-util_8c_a852b8f54d9bf6666c9cb262ccbd0dc56_cgraph" id="tw-util_8c_a852b8f54d9bf6666c9cb262ccbd0dc56_cgraph">
<area shape="rect" id="node2" href="ross-extern_8h.html#a6394897673b3028914978e64be355d73" title="tw_kp_grab_output_buffer" alt="" coords="134,5,306,32"/><area shape="rect" id="node3" href="tw-util_8c.html#a9fdd5173071664ba458fbd0d2419713e" title="tw_printf" alt="" coords="184,56,256,83"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="a9fdd5173071664ba458fbd0d2419713e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void tw_printf </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>line</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00061">61</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>Referenced by <a class="el" href="avl__tree_8c_source.html#l00163">avlInsert()</a>, <a class="el" href="buddy_8c_source.html#l00137">buddy_free()</a>, <a class="el" href="tw-setup_8c_source.html#l00122">early_sanity_check()</a>, and <a class="el" href="tw-util_8c_source.html#l00008">tw_output()</a>.</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_a9fdd5173071664ba458fbd0d2419713e_icgraph.png" border="0" usemap="#tw-util_8c_a9fdd5173071664ba458fbd0d2419713e_icgraph" alt=""/></div>
<map name="tw-util_8c_a9fdd5173071664ba458fbd0d2419713e_icgraph" id="tw-util_8c_a9fdd5173071664ba458fbd0d2419713e_icgraph">
<area shape="rect" id="node2" href="avl__tree_8h.html#a8bb2b5a6430ff1464d6065e5cd136a43" title="avlInsert" alt="" coords="129,382,201,409"/><area shape="rect" id="node24" href="buddy_8h.html#a2d38d5280dce5d4f0b85410e00c293a6" title="buddy_free" alt="" coords="762,269,849,295"/><area shape="rect" id="node29" href="tw-setup_8c.html#abeb5dbef977462c62de62c5ad5ff6dc2" title="early_sanity_check" alt="" coords="254,450,389,477"/><area shape="rect" id="node31" href="tw-util_8c.html#a852b8f54d9bf6666c9cb262ccbd0dc56" title="tw_output" alt="" coords="126,483,205,510"/><area shape="rect" id="node3" href="hash-quadratic_8h.html#a4e8a48f209c2574ac4755605ac42f773" title="tw_hash_insert" alt="" coords="266,382,377,409"/><area shape="rect" id="node4" href="network-mpi_8c.html#a149ffcda6e9840d885bfe970374a9f49" title="Determines how to handle the newly received event. " alt="" coords="447,382,532,409"/><area shape="rect" id="node5" href="network-mpi_8c.html#a8705ab243733bb856d58534e0e853da3" title="Start checks for finished operations in send/recv queues, and post new sends/recvs if possible..." alt="" coords="590,382,703,409"/><area shape="rect" id="node6" href="network-mpi_8h.html#a0f32f17f307a059cd2464da4039729fb" title="Cancel the given remote event by either removing from the outq or sending an antimessage, depending on the status of the original positive send. " alt="" coords="752,345,859,371"/><area shape="rect" id="node21" href="network-mpi_8h.html#a29c8b71c5bbcfa0c7a30fc31769be05e" title="starts service_queues() to poll network " alt="" coords="1337,381,1431,407"/><area shape="rect" id="node7" href="tw-event_8c.html#ace65c26a8d368f9b222d3d4416bff0af" title="event_cancel" alt="" coords="928,345,1027,371"/><area shape="rect" id="node8" href="tw-event_8c.html#ad90c1310a5aeee6d9bff67237f3e9913" title="tw_event_rollback" alt="" coords="1115,193,1242,219"/><area shape="rect" id="node9" href="tw-kp_8c.html#a64819ac4aba17987e01bb13142e78c86" title="tw_kp_rollback_event" alt="" coords="1310,117,1458,143"/><area shape="rect" id="node15" href="tw-kp_8c.html#a5b88c07fbc4f7810bdc676306013b513" title="tw_kp_rollback_to" alt="" coords="1321,193,1447,219"/><area shape="rect" id="node19" href="tw-sched_8c.html#ad27b3474d878cedfe1a1f993093d8715" title="tw_sched_batch" alt="" coords="1325,7,1443,34"/><area shape="rect" id="node20" href="tw-sched_8c.html#a1586b72acaa34a4ef8cc6aadabe9711e" title="tw_sched_batch_realtime" alt="" coords="1507,265,1677,291"/><area shape="rect" id="node10" href="tw-sched_8c.html#abe0eb975865f0cde7f2c2e3129bd18d7" title="tw_sched_cancel_q" alt="" coords="1523,113,1661,139"/><area shape="rect" id="node11" href="tw-sched_8c.html#a1ebf9585a3de4d61c5fc050c7600fcd8" title="tw_scheduler_optimistic" alt="" coords="1735,181,1897,207"/><area shape="rect" id="node14" href="tw-sched_8c.html#accfa49d85bd68f2c53d4a08cf64ace88" title="tw_scheduler_optimistic\l_realtime" alt="" coords="1735,253,1897,295"/><area shape="rect" id="node12" href="tw-setup_8c.html#a6dbc4bba03285bb1b8a8a5464f0375ea" title="tw_run" alt="" coords="1955,290,2016,317"/><area shape="rect" id="node13" href="phold_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title="main" alt="" coords="2064,405,2115,431"/><area shape="rect" id="node16" href="tw-sched_8c.html#a0bb0520414480154343b267735636433" title="tw_sched_event_q" alt="" coords="1527,214,1657,241"/><area shape="rect" id="node18" href="tw-sched_8c.html#ad49988d8dcde406fac7f4a2e11eac17f" title="tw_scheduler_optimistic\l_debug" alt="" coords="1511,47,1673,88"/><area shape="rect" id="node17" href="tw-sched_8c.html#ab3e02a0e976921bd18a11b8b6a00c110" title="tw_scheduler_conservative" alt="" coords="1726,319,1906,346"/><area shape="rect" id="node22" href="ross-gvt_8h.html#a0d905b32b2567dd637c4926872622a70" title="tw_gvt_step2" alt="" coords="1542,315,1642,342"/><area shape="rect" id="node23" href="tw-sched_8c.html#ae7357a99fcf58867f153cb7ab920b400" title="tw_sched_init" alt="" coords="1765,419,1867,446"/><area shape="rect" id="node25" href="ross-inline_8h.html#ad46705159e8a344f46b9e2943774cf85" title="tw_event_free" alt="" coords="925,243,1029,270"/><area shape="rect" id="node26" href="tw-eventq_8h.html#abcb2f5e59834cc2566395b4732cb2f32" title="tw_eventq_push_list" alt="" coords="907,294,1048,321"/><area shape="rect" id="node27" href="tw-eventq_8h.html#a8cee9de44c05a95ae003767f7299d9c4" title="tw_eventq_fossil_collect" alt="" coords="1096,306,1261,333"/><area shape="rect" id="node28" href="tw-pe_8c.html#a36f9f2e3925202eae4c7cb42f913280c" title="tw_pe_fossil_collect" alt="" coords="1314,313,1454,339"/><area shape="rect" id="node30" href="tw-setup_8c.html#ae29dd6eba29314361ef334f6bf028210" title="tw_define_lps" alt="" coords="438,467,541,494"/></map>
</div>
</p>

</div>
</div>
<a class="anchor" id="acbad94a55fd48c019924e3efbfa9b57a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void tw_warning </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>file</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>line</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&#160;</td>
          <td class="paramname"><em>...</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00090">90</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>References <a class="el" href="ross-global_8c_source.html#l00088">g_tw_mynode</a>.</p>

<p>Referenced by <a class="el" href="tw-opts_8c_source.html#l00287">apply_opt()</a>.</p>

<p><div class="dynheader">
Here is the caller graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="tw-util_8c_acbad94a55fd48c019924e3efbfa9b57a_icgraph.png" border="0" usemap="#tw-util_8c_acbad94a55fd48c019924e3efbfa9b57a_icgraph" alt=""/></div>
<map name="tw-util_8c_acbad94a55fd48c019924e3efbfa9b57a_icgraph" id="tw-util_8c_acbad94a55fd48c019924e3efbfa9b57a_icgraph">
<area shape="rect" id="node2" href="tw-opts_8c.html#a255e7c887f702f6b1fb1e98df987d67d" title="apply_opt" alt="" coords="142,5,221,32"/><area shape="rect" id="node3" href="tw-opts_8c.html#a3f91680611ade2426999baee0d9c876c" title="match_opt" alt="" coords="269,5,352,32"/><area shape="rect" id="node4" href="tw-opts_8h.html#a899f9ec9822bbe43beedc9ed646aec41" title="tw_opt_parse" alt="" coords="401,5,501,32"/><area shape="rect" id="node5" href="tw-setup_8c.html#a7d395f5590701f5526a161fcb1261b03" title="tw_init" alt="" coords="550,5,610,32"/><area shape="rect" id="node6" href="phold_8c.html#a3c04138a5bfe5d72780bb7e82a18e627" title="main" alt="" coords="659,5,709,32"/></map>
</div>
</p>

</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="a509bf47a4c03b5971d4d49dd409c5f54"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">struct <a class="el" href="structmem__pool.html">mem_pool</a>* main_pool</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00110">110</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>Referenced by <a class="el" href="tw-util_8c_source.html#l00160">pool_alloc()</a>.</p>

</div>
</div>
<a class="anchor" id="a01fa87954b936910e1c00044cab8d30f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">unsigned malloc_calls</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00116">116</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

</div>
</div>
<a class="anchor" id="a1f7da6c881206b1209546548fb1088a4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const size_t pool_align = (( sizeof(double) ) &gt; ( sizeof(void*) ) ? ( sizeof(double) ) : ( sizeof(void*) ))</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00114">114</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

</div>
</div>
<a class="anchor" id="aaeb9b2d37542fba1b318e4fcde49d9b4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const size_t pool_size = (512 * 1024) - 32</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00113">113</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>Referenced by <a class="el" href="tw-util_8c_source.html#l00160">pool_alloc()</a>.</p>

</div>
</div>
<a class="anchor" id="a3bb14855f7c280e92d0c01bbbc9b4c3c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">size_t total_allocated</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="tw-util_8c_source.html#l00115">115</a> of file <a class="el" href="tw-util_8c_source.html">tw-util.c</a>.</p>

<p>Referenced by <a class="el" href="tw-util_8c_source.html#l00120">tw_calloc_stats()</a>.</p>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>
